using System;
using System.Collections.Generic;
using System.Text;
using DataAccess;
using Globals;

namespace Task.Contracts
{
    public interface IGalleryTask
    {

        void AddGallery(int userId, string galleryName, string galleryDescription);

        List<gallery> ReadGalleriesByUserId(int userId);

        gallery ReadGalleryByGalleryId(int galleryId);

        user GetUserByGalleryId(int galleryId);

        List<art> ReadAllArtForUserForGalleryForType(int idUser, int idGallery, int artTypeId);

        List<art> ReadArtByGalleryId(int galleryId, int start, int howMany, ContentNamesGlobals.ArtType typ);

        int ReadCountArtByGalleryIdAndArtType(int galleryId, ContentNamesGlobals.ArtType typ);
        
        bool HasGalleryAnyArt(int id);

        void DeleteGalleryById(int id);

        List<gallery> ReadGalleriesByUserIdMaxNumber(int userId);
        
    }
}
